#if !defined(__APP_SERIAL)
#define __APP_SERIAL
#include "app_device.h"
#include <termios.h>

// 波特率枚举
typedef enum
{
    BR_9600 = B9600,
    BR_115200 = B115200
} SERIAL_BAUD_RATE;

// 校验位枚举
typedef enum
{
    PARITY_NONE = 0, // 无校验位
    PARITY_ODD = PARENB | PARODD, // 奇校验位
    PARITY_EVEN = PARENB, // 偶校验位
} SERIAL_PARITY;

// 停止位枚举
typedef enum
{
    STOP_BIT_ONE = 0, // 1位停止位
    STOP_BIT_TWO = CSTOPB, // 2位停止位
} SERIAL_STOP_BIT;

/**
 * @brief 设置波特率
 */
int app_serial_baud(app_device_t *device ,SERIAL_BAUD_RATE baud_rate);


/**
 * @brief 设置阻塞模式

 */
int app_serial_isblock(app_device_t *device,int isblock );
/**
 * @brief 对设备进行串口设置
 */
int app_serial_init(app_device_t *device);



#endif // __APP_SERIAL
